home *** CD-ROM | disk | FTP | other *** search
/ Developer CD Series 1996 January: Mac OS SDK / Dev.CD Jan 96 SDK / Dev.CD Jan 96 SDK1.toast / Development Kits (Disc 1) / MacODBC / ODBC Tools / InternalIncludes / DialogUtilities.h < prev    next >
Encoding:
Text File  |  1995-04-21  |  6.0 KB  |  161 lines  |  [TEXT/MPS ]

  1. //
  2. // DialogUtilities.h
  3. //
  4.  
  5. #ifndef __DialogUtilities__
  6. #define __DialogUtilities__
  7.  
  8. #ifndef __DIALOGS__
  9. #include <Dialogs.h>
  10. #endif
  11. #ifndef __EVENTS__
  12. #include <Events.h>
  13. #endif
  14. #ifndef __LISTS__
  15. #include <Lists.h>
  16. #endif
  17. #ifndef __MENUS__
  18. #include <Menus.h>
  19. #endif
  20. #ifndef __QUICKDRAW__
  21. #include <QuickDraw.h>
  22. #endif
  23. #ifndef __TYPES__
  24. #include <Types.h>
  25. #endif
  26.  
  27. #define ESCAPE            (0x1B)        // ascii codes
  28. #define ENTER            (0x03)
  29. #define CLEAR            (0x1B)
  30. #define DELETE            (0x08)
  31. #define RETURN            (0x0D)
  32. #define TAB                (0x09)
  33. #define ARROWL            (0x1C)
  34. #define ARROWR            (0x1D)
  35. #define ARROWU            (0x1E)
  36. #define ARROWD            (0x1F)
  37.  
  38. #define ON_MAIN_SCREEN        0        // dialog and alert centering
  39. #define ON_MOUSE_SCREEN        1        //
  40.  
  41. short            AlertOverWindow            (short alertID, ModalFilterUPP filterProc, WindowPtr parentWindow);
  42. DialogPtr        GetNewDialogCentered    (short dialogID, short whichScreen);
  43. DialogPtr        GetNewDialogOverWindow    (short dialogID, WindowPtr parentWindow);
  44. short            AlertCentered            (short id, ModalFilterUPP filterProc);
  45. short            NoteAlertCentered        (short id, ModalFilterUPP filterProc);
  46. short            CautionAlertCentered    (short id, ModalFilterUPP filterProc);
  47. short            StopAlertCentered        (short id, ModalFilterUPP filterProc);
  48. void            ErrorMessageAlert        (short id, StringPtr message, OSErr err);
  49. void            ErrorMessageAlertOver    (short id, WindowPtr parentWindow, StringPtr message, OSErr err);
  50. void            PositionAlert            (short id, Point topLeft);
  51. void            center_alert            (short alrt_id, char mode);
  52. void            center_dialog            (short dlog_id, char mode);
  53. GDHandle        get_mouse_gdev            ();
  54. void            EnableDItem                (DialogPtr, short, Boolean);
  55. void            OutlineDItem            (DialogPtr, short);
  56. void            FlashDItem                (DialogPtr, short);
  57. void            ActivateDItem            (DialogPtr, short, Boolean);
  58. void            AdjustDCursor            (DialogPtr);
  59. void            SetDUserItem            (DialogPtr theDialog, short theItem, UniversalProcPtr drawProc);
  60. void            SetDRect                (DialogPtr theDialog, short theItem, Rect *r);
  61. void            GetDRect                (DialogPtr theDialog, short theItem, Rect *r);
  62. void            SetDText                (DialogPtr, short, unsigned char*);
  63. void            GetDText                (DialogPtr, short, unsigned char*);
  64. void            SetDCheckButton            (DialogPtr, short, Boolean);
  65. void            ToggleDCheckButton        (DialogPtr, short);
  66. void            SetDRadioButton            (DialogPtr, short btn, short firstBtn, short lastBtn);
  67. short            GetDRadioButton            (DialogPtr, short firstBtn, short lastBtn);
  68. short            GetDCtlValue            (DialogPtr, short);
  69. void            SetDCtlValue            (DialogPtr, short item, short value);
  70. void            SetDTextToNum            (DialogPtr, short, long);
  71. long            GetDTextAsNum            (DialogPtr, short);
  72. Boolean            IsCancelKeyEvent        (EventRecord *event);
  73. Boolean            IsEditKey                (unsigned char c);
  74. Boolean            IsDSelection            (DialogPtr dialog);
  75. pascal void        DrawItemLine            (DialogPtr dialog, short item);
  76. pascal void        DrawItemDoubleLine        (DialogPtr dialog, short item);
  77. pascal void        DrawItemRect            (DialogPtr dialog, short item);
  78. pascal void        DrawItemLineGray        (DialogPtr dialog, short item);
  79. pascal void        DrawItemRectGray        (DialogPtr dialog, short item);
  80.  
  81. void            MovableDialog            (ModalFilterProcPtr filterProc, short *itemHit);
  82. pascal Boolean    StandardFilter            (DialogPtr whichDialog, EventRecord *event, short *itemHit);
  83. pascal Boolean    StandardModalFilter        (DialogPtr whichDialog, EventRecord *event, short *itemHit);
  84.  
  85. //
  86. // list utilities
  87. //
  88.  
  89. ListHandle        ListCreate                (WindowPtr window, Rect *frame, Boolean allowMultipleSelections);
  90. void            ListDraw                (ListHandle list);
  91. Boolean            ListFilter                (ListHandle list, EventRecord *event, DialogPtr listDialog, short listItem, short dblClickItem, short *itemHit);
  92. Boolean            ListClick                (ListHandle list, EventRecord *event, Boolean *doubleClicked);
  93. Boolean            ListKey                    (ListHandle list, EventRecord *event);
  94. void            ListInsertRowAt            (ListHandle list, unsigned char *text, short row);
  95. void            ListAddRow                (ListHandle list, unsigned char *text);
  96. void            ListDeleteRow            (ListHandle list, short row);
  97. void            ListGetRow                (ListHandle list, short row, unsigned char *text);
  98. void            ListSetRow                (ListHandle list, short row, unsigned char *text);
  99. void            ListSetSelection        (ListHandle list, short row);
  100. void            ListSetSelectionByText    (ListHandle list, unsigned char *text, Boolean exactMatchOnly);
  101. Boolean            ListGetFirstSelection    (ListHandle list, short *row);
  102. Boolean            ListGetNextSelection    (ListHandle list, short *row);
  103. Boolean            ListFindRow                (ListHandle list, unsigned char *text, Boolean exactMatchOnly, short *row);
  104.  
  105. Boolean            ListFindRowSorted        (ListHandle list, unsigned char *text, short *row);
  106. void            ListAddRowSorted        (ListHandle list, unsigned char *text);
  107.  
  108. //
  109. // popup menu utilities
  110. //
  111.  
  112. #define kStandardPopup            0
  113. #define kTriangleOnlyPopup        1
  114.  
  115. typedef struct pop
  116. {
  117.     short        choice;
  118.     short        menuID;
  119.     MenuHandle    hMenu;
  120.     Rect        bounds;
  121.     short        style;
  122.     Boolean        isVisible;
  123. } Popup;
  124.  
  125. Popup*        PopupNew                    (short popupStyle, short menuID, short choice, Rect *bounds);
  126. void        PopupDelete                    (Popup *pop);
  127. void        PopupDraw                    (Popup *pop);
  128. Boolean        PopupClick                    (Popup *pop, EventRecord *event);
  129. Boolean        PopupFilter                    (Popup *pop, DialogPtr popDialog, EventRecord *event);
  130. short        PopupGetChoice                (Popup *pop);
  131. void        PopupSetChoice                (Popup *pop, short choice);
  132. void        PopupGetChoiceText            (Popup *pop, unsigned char *text);
  133. short        PopupSetChoiceToMatchText    (Popup *pop, unsigned char *text);
  134. short        PopupGetItemCount            (Popup *pop);
  135. void        PopupInsertItem                (Popup *pop, unsigned char *text, short aterItem);
  136. void        PopupDeleteItem                (Popup *pop, short item);
  137. Boolean        PopupGetVisible                (Popup *pop);
  138. void        PopupSetVisible                (Popup *pop, Boolean isVisible);
  139.  
  140. //
  141. // password utilities
  142. //
  143.  
  144. pascal Boolean    PasswordFilter    (DialogPtr dialog, EventRecord *event, short *itemHit, short passwordItem, unsigned char *password);
  145.  
  146. // misc stuff
  147.  
  148. void NoResAlert( ConstStr255Param theText, ConstStr255Param theErr );
  149.  
  150. #if USESROUTINEDESCRIPTORS
  151.     #define UPP(pp) ((UniversalProcPtr)&rd##pp)
  152.     #define UPPInit(info,pp) RoutineDescriptor rd##pp = BUILD_ROUTINE_DESCRIPTOR(info,pp);
  153.     #define UPPInitStatic(info,pp) static RoutineDescriptor rd##pp = BUILD_ROUTINE_DESCRIPTOR(info,pp);
  154. #else
  155.     #define UPP(pp) (pp)
  156.     #define UPPInit(info,pp)
  157.     #define UPPInitStatic(info,pp)
  158. #endif
  159.  
  160. #endif __DialogUtilities__
  161.